Timm Bäder [Tue, 18 Sep 2018 14:29:10 +0000 (16:29 +0200)]
menu: Remove useless if statement
Timm Bäder [Mon, 17 Sep 2018 09:19:57 +0000 (11:19 +0200)]
menu: Show scroll arrows if necessary
Timm Bäder [Mon, 17 Sep 2018 09:07:41 +0000 (11:07 +0200)]
menu: Remove arrow visibility flags
Jan Alexander Steffens (heftig) [Wed, 5 Sep 2018 19:46:28 +0000 (21:46 +0200)]
GtkApplication: Fix CRITICAL on shutdown when register_session=FALSE
Close https://gitlab.gnome.org/GNOME/gtk/issues/1323#note_327705
Daniel Boles [Sat, 22 Sep 2018 16:52:49 +0000 (16:52 +0000)]
Merge branch 'master' into 'master'
flattenlistmodel: Fix uninitialized variable warning
See merge request GNOME/gtk!347
Piotr Drąg [Thu, 20 Sep 2018 17:01:14 +0000 (19:01 +0200)]
Use Unicode apostrophes in new strings
See https://developer.gnome.org/hig/stable/typography.html
https://bugzilla.gnome.org/show_bug.cgi?id=772371
Yi-Soo An [Thu, 20 Sep 2018 03:45:33 +0000 (12:45 +0900)]
flattenlistmodel: Fix uninitialized variable warning
Variable, added, would be a garbage value if model is NULL and
the following code, if condition, use the uninitialized variable.
A side effect could be occurred by that.
To avoid, the variable is initialized to zero.
Matthias Clasen [Wed, 19 Sep 2018 13:46:50 +0000 (13:46 +0000)]
Merge branch 'master' into 'master'
Remove some duplication in testfilechooserbutton
See merge request GNOME/gtk!342
Matthias Clasen [Wed, 19 Sep 2018 11:59:16 +0000 (11:59 +0000)]
Merge branch 'installed-tests' into 'master'
Get GTK+ 4 installed-tests closer to working
See merge request GNOME/gtk!348
Emin Tufan Çetin [Wed, 19 Sep 2018 11:13:18 +0000 (11:13 +0000)]
Update Turkish translation
Emin Tufan Çetin [Wed, 19 Sep 2018 11:05:05 +0000 (11:05 +0000)]
Update Turkish translation
Emin Tufan Çetin [Wed, 19 Sep 2018 10:56:13 +0000 (10:56 +0000)]
Update Turkish translation
Simon McVittie [Fri, 14 Sep 2018 12:15:09 +0000 (13:15 +0100)]
testsuite: Install accessibility-dump executable alongside tests
The installed-tests want to run this.
Signed-off-by: Simon McVittie <smcv@debian.org>
Simon McVittie [Wed, 19 Sep 2018 07:09:18 +0000 (08:09 +0100)]
testsuite: Fix installed-test metadata for autotestkeywords
The executable is called autotestkeywords, so we shouldn't try to run
an executable named keywords. Also rename the metadata file to match.
Signed-off-by: Simon McVittie <smcv@debian.org>
Simon McVittie [Fri, 14 Sep 2018 08:22:15 +0000 (09:22 +0100)]
reftests: Fix path to installed-tests in .test metadata
The installed-tests are now namespaced as gtk-4.0 to avoid colliding
with GTK+ 3, but these files weren't updated.
Signed-off-by: Simon McVittie <smcv@debian.org>
Benjamin Otte [Wed, 19 Sep 2018 02:28:09 +0000 (04:28 +0200)]
inspector: Handle case where there's no default application
Benjamin Otte [Wed, 19 Sep 2018 02:26:37 +0000 (04:26 +0200)]
cssrbtree: Fix a crasher
After removing elements, there were a few cases where the tree wasn't
properly balanced which could further down violate assumptions about the
layout.
Attached is the original testcase that triggered it. I didn't bother
simplifying it.
LRN [Tue, 18 Sep 2018 16:43:37 +0000 (16:43 +0000)]
Merge branch 'win32-scroll-both-gtk4' into 'master'
GDK W32: send both smooth and discrete scrolling events (GTK4)
See merge request GNOME/gtk!337
Benjamin Otte [Tue, 18 Sep 2018 15:19:12 +0000 (15:19 +0000)]
Merge branch 'revealer-support-min-size-master' into 'master'
gtkrevealer: support minimum size of child
Closes #635
See merge request GNOME/gtk!317
Eduard Braun [Thu, 13 Sep 2018 14:17:51 +0000 (16:17 +0200)]
GDK W32: fix direction of horizontal smooth scrolling events
Commit
359df028be7b1dae76a1abb9bad8a3b86a648765 changed the
code to send GDK_SCROLL_SMOOTH with deltas instead of
GDK_SCROLL_(UP|DOWN|LEFT|RIGHT).
Windows defines deltas inversed for vertical direction
(positive values mean the wheel was turned forward)
but not for horizontal direction
(positive values mean the wheel was turned towards the right).
This commit fixes behavior as both axes were inverted previously.
Руслан Ижбулатов [Wed, 12 Sep 2018 06:55:49 +0000 (06:55 +0000)]
GDK W32: send both smooth and discrete scrolling events
Commit
d64467b33475bf8358f66bec9450101f37c05e9c changed the
code to send GDK_SCROLL_SMOOTH with deltas instead of
GDK_SCROLL_(UP|DOWN|LEFT|RIGHT). Change it again, to send
both the GDK_SCROLL_SMOOTH and the GDK_SCROLL_(UP|DOWN|LEFT|RIGHT)
event separately (with the discrete event marked as emulated),
as this is what other backends (such as wayland) do.
Carlos Soriano [Tue, 18 Sep 2018 08:55:02 +0000 (10:55 +0200)]
revealer: Support minimum size of child
Up until now when allocating the child it only used the natural size
while the measuring also used the minimum size, resulting in a clipped
child when animating if the child had different minimum size and
natural size. This was an obvious case when using labels that had
ellipsization.
This commit gives full allocation to the child by inverting the size
the revealer reduces from its animation progress.
Code done by Benjamin Otte.
Closes: https://gitlab.gnome.org/GNOME/gtk/issues/635
Christoph Reiter [Tue, 18 Sep 2018 07:55:50 +0000 (09:55 +0200)]
ci/docker: add lcov so we can create coverage reports
This was requested on IRC; the docker image in the registry is updated already.
Benjamin Otte [Tue, 18 Sep 2018 05:50:33 +0000 (07:50 +0200)]
treelistmodel: Improve naming a bit
The complexity with model items vs row items is really confusing. Add to
that treelistmodel position vs child model position vs parent position,
and you're so confused, even the best naming can't help.
And once you're there, consider passthrough vs non-passthrough...
Benjamin Otte [Tue, 18 Sep 2018 05:27:48 +0000 (07:27 +0200)]
listmodels: Clarify documentation for function prototypes
Fixes #1341
Mohammed Sadiq [Tue, 18 Sep 2018 04:31:12 +0000 (10:01 +0530)]
Revert "listlistmodel: Fix documentation comment"
This reverts commit
03679d434262be5a73e25668513a6a6597fd90ea.
listlistmodel is private
Mohammed Sadiq [Tue, 18 Sep 2018 04:25:43 +0000 (09:55 +0530)]
listlistmodel: Fix documentation comment
Georges Basile Stavracas Neto [Tue, 18 Sep 2018 03:51:57 +0000 (00:51 -0300)]
tree-list-model: Return the correct item type
When passthrough is enabled, it should return the GType
of the child GListModels; when disabled, it should be
GTK_TYPE_TREE_LIST_ROW.
The conditions are inverted however, causing a few
warnings to trigger.
Fix that by returning the correct GType.
Mohammed Sadiq [Tue, 18 Sep 2018 02:54:30 +0000 (02:54 +0000)]
Merge branch 'wip/sadiq/model-fixes' into 'master'
treelistmodel: Fix memory leak
See merge request GNOME/gtk!344
Mohammed Sadiq [Tue, 18 Sep 2018 01:58:56 +0000 (07:28 +0530)]
treelistmodel: Fix memory leak
gtk_tree_list_model_init_node() increases the reference count
of the model passed. Let's not do that, and let it take the
model passed.
Mohammed Sadiq [Tue, 18 Sep 2018 02:03:58 +0000 (02:03 +0000)]
Merge branch 'wip/sadiq/model-fixes' into 'master'
treelistmodel: Fix signal emission on row destroy
See merge request GNOME/gtk!343
Mohammed Sadiq [Tue, 18 Sep 2018 01:41:27 +0000 (07:11 +0530)]
treelistmodel: Fix signal emission on row destroy
Manu Cornet [Mon, 17 Sep 2018 12:27:46 +0000 (12:27 +0000)]
Remove some duplication in testfilechooserbutton
Most of the code creating the two types of dialogs (open file,
choose folder) is the same. This refactors the common code into a
helper method. This also makes it easier to add other chooser types
for this test (e.g. save file).
Rico Tzschichholz [Mon, 17 Sep 2018 11:00:36 +0000 (13:00 +0200)]
gtk: Fix some g-i annotations warnings
Robert Ancell [Mon, 17 Sep 2018 08:59:19 +0000 (08:59 +0000)]
Merge branch 'toolbar-expand' into 'master'
toolbar: Use hexpand/vexpand Gtk+ properties
See merge request GNOME/gtk!334
Robert Ancell [Mon, 10 Sep 2018 23:00:01 +0000 (11:00 +1200)]
toolbar: Use hexpand/vexpand Gtk+ properties
Matthias Clasen [Mon, 17 Sep 2018 03:06:19 +0000 (23:06 -0400)]
tree list model: Add docs
Matthias Clasen [Mon, 17 Sep 2018 02:35:26 +0000 (22:35 -0400)]
Minor doc fix
Clarify some wording.
Benjamin Otte [Mon, 17 Sep 2018 02:29:40 +0000 (04:29 +0200)]
testsuite: Disable some tests for older glib
Benjamin Otte [Mon, 17 Sep 2018 01:56:41 +0000 (03:56 +0200)]
testsuite: Add tests for GtkSortListModel
Benjamin Otte [Mon, 17 Sep 2018 01:50:56 +0000 (03:50 +0200)]
sortlistmodel: Actually insert unsorted items at the wrong place
We were adding items in reverse order, oops.
Piotr Drąg [Sun, 16 Sep 2018 19:02:31 +0000 (21:02 +0200)]
Update POTFILES.in
Benjamin Otte [Sun, 16 Sep 2018 17:38:25 +0000 (19:38 +0200)]
docs: Add missing TreeListModel docs
Matthias Clasen [Sun, 16 Sep 2018 17:06:29 +0000 (17:06 +0000)]
Merge branch 'wip/sadiq/fixes' into 'master'
gdkselectioninputstream-x11: Fix memory leak
See merge request GNOME/gtk!340
Benjamin Otte [Sun, 16 Sep 2018 08:31:16 +0000 (10:31 +0200)]
testtreelistmodel: Display the file icon, because why not
Benjamin Otte [Tue, 11 Sep 2018 02:41:52 +0000 (04:41 +0200)]
inspector: Update the controllers list to show parent controllers
Now we show all the controllers that are relevant when widget gets sent
events.
Benjamin Otte [Sat, 15 Sep 2018 13:12:35 +0000 (15:12 +0200)]
testtreelistmodel: Make the statusbar display more info
Now display how many items were filtered (if any) and how many
directories remain to be sanned (if any).
Benjamin Otte [Fri, 14 Sep 2018 02:54:36 +0000 (04:54 +0200)]
testtreelistmodel: Sort files by name
Benjamin Otte [Fri, 14 Sep 2018 02:34:40 +0000 (04:34 +0200)]
GtkSortListModel: Add
Benjamin Otte [Thu, 13 Sep 2018 00:33:32 +0000 (02:33 +0200)]
testtreelistmodel: Add search
Add a simple search that does a case insensitive substring search of the
file paths.
Benjamin Otte [Wed, 12 Sep 2018 03:04:17 +0000 (05:04 +0200)]
testtreelistmodel: Make the directory loading async
This is way more complicated than it should be, because it requires
manually limiting the number of open file enumerators.
On the other hand, it exhaustively tests the items-changed emission of
all involved listmodels because those signals come in pretty much
randomly.
It's also 50% slower than the sync version, with the caeat that the sync
version only shows the UI after it's done loading, while this version
shows it right away.
Benjamin Otte [Wed, 12 Sep 2018 01:10:50 +0000 (03:10 +0200)]
testtreelistmodel: Add a hack to handle LONG lists
... and make the lists long by autoexpanding the tree.
Benjamin Otte [Wed, 12 Sep 2018 01:07:24 +0000 (03:07 +0200)]
GtkSliceListModel: add
Benjamin Otte [Tue, 11 Sep 2018 02:19:06 +0000 (04:19 +0200)]
inspector: Make controllers page use gtk_list_box_bind_model()
Benjamin Otte [Tue, 11 Sep 2018 00:25:37 +0000 (02:25 +0200)]
inspector: Rename "Gestures" page to "Controllers"
And rename GtkInspectorGestures => GtkInspectorControllers, too.
Benjamin Otte [Mon, 10 Sep 2018 23:56:42 +0000 (01:56 +0200)]
inspector: Make gestures page handle all controllers
This requires removing support for gesture groups.
Benjamin Otte [Mon, 10 Sep 2018 23:28:19 +0000 (01:28 +0200)]
GtkMapListModel: add
Benjamin Otte [Mon, 10 Sep 2018 15:01:57 +0000 (17:01 +0200)]
propertylookuplistmodel: Add
This model just takes an object and a property name and recursively
looks it up. In particular, I want it for:
widget, widget.parent, widget.parent.parent, ...
Benjamin Otte [Wed, 29 Aug 2018 14:19:37 +0000 (16:19 +0200)]
inspector: Turn object tree into a GtkListBox
The code gets rid of the GtkTreeView and replaces it with a GtkListBox.
Most of the logic is now done via GListModel subclasses.
A big change is that this new list is now tracking updates itself and
doesn't need to be manually updated. All code that used to cause rescans
or add forgotten objects to the tree has been removed.
If objects are missing from the object tree, the logic for tracking them
needs to be added.
Benjamin Otte [Wed, 5 Sep 2018 15:26:35 +0000 (17:26 +0200)]
testsuite: Disable some tests with older glib
Fixes CI.
Benjamin Otte [Wed, 5 Sep 2018 14:40:51 +0000 (16:40 +0200)]
inspector: Use a GtkPicture to display render nodes
Instead of the outdated render node view, use modern GTK APIs.
Benjamin Otte [Wed, 5 Sep 2018 04:34:03 +0000 (06:34 +0200)]
inspector: Add an icon to the render node list
Benjamin Otte [Wed, 5 Sep 2018 03:53:33 +0000 (05:53 +0200)]
inspector: Make the render node tree use a ListBox
It used to be a treeview.
Benjamin Otte [Wed, 5 Sep 2018 01:00:18 +0000 (03:00 +0200)]
widget: Add gtk_widget_observe_controllers()
This mirrors gtk_widget_observe_children() - just that it observes the
controllers, not the children.
Benjamin Otte [Sun, 2 Sep 2018 22:48:28 +0000 (00:48 +0200)]
gtk: Add GtkFlattenListModel
We can flatten lists of lists into lists now!
Benjamin Otte [Sat, 1 Sep 2018 16:48:38 +0000 (18:48 +0200)]
treelistmodel: Add more API to navigate the tree
This adds functionality from GtkTreeIter into GtkTreeListRow that allows
finding items in the model and getting their position for use in
GtkListBox.
Benjamin Otte [Sat, 1 Sep 2018 02:59:06 +0000 (04:59 +0200)]
treelistmodel: Refactor to add GtkTreeListRow
This patch does multiple things:
1. Add a custom persistent per-row object.
2. Move all per-row API to that object. This means notifications are now
possible.
3. Add a "passthrough" construct-only property to the TreeListModel that
influences if the model returns these new object or passes through
the ones from the model.
This greatly simplifies the code needed to be written for widgetry,
because one can just connect the per-row object to the expanders that
expand and collapse rows.
As an added power feature, these objects can also be passed through
further models (like filter models).
It also adds kind of a hack to Adwaita to make the test look neat.
Benjamin Otte [Fri, 31 Aug 2018 03:34:18 +0000 (05:34 +0200)]
gtk: Add GtkFilterListModel
This is a GListModel implementation that filters the given source model.
Benjamin Otte [Mon, 27 Aug 2018 17:50:01 +0000 (19:50 +0200)]
widget: Add gtk_widget_observe_children()
This creates a listmodel that tracks a widget's children. Doing so turns
adding/removing children from O(1) to O(N) though, so use with caution.
Benjamin Otte [Mon, 27 Aug 2018 06:37:16 +0000 (08:37 +0200)]
window: Add gtk_window_get_toplevels()
This one returns a list of all toplevel windows.
Benjamin Otte [Tue, 12 Jun 2018 01:56:21 +0000 (03:56 +0200)]
gtk: Add GtkTreeListModel
This is a GListModel implementation with a neat API that can be used to
implement trees inside GtkListBox.
Mohammed Sadiq [Sun, 16 Sep 2018 14:38:25 +0000 (20:08 +0530)]
gdkselectioninputstream-x11: Fix memory leak
Matthias Clasen [Fri, 14 Sep 2018 03:28:16 +0000 (23:28 -0400)]
gtk_application_inihit: allow no reason
We document this argument as nullable, so treat it as such.
Closes: https://gitlab.gnome.org/GNOME/gtk/issues/1327
Emin Tufan Çetin [Tue, 11 Sep 2018 20:17:29 +0000 (20:17 +0000)]
Update Turkish translation
Jakub Steiner [Mon, 10 Sep 2018 14:29:54 +0000 (14:29 +0000)]
Merge branch 'adwaita-fixes' into 'master'
Adwaita fixes
See merge request GNOME/gtk!333
Adrien Plazas [Fri, 7 Sep 2018 13:24:24 +0000 (15:24 +0200)]
Adwaita: Set selection mode to headerbars if it's on ancestors
This allows to set the container of the headerbars in selection mode
rather than having to set the mode to each element of the title bar.
Adrien Plazas [Fri, 7 Sep 2018 10:32:36 +0000 (12:32 +0200)]
Adwaita: Style separator.sidebar
Let separators be declared as sidebars to have the same style as those
drawn by GtkStackSidebar. This also let them handle the selection-mode
class, whether they are assigned it or they descend from something in
selection mode.
Also drop setting the selection mode color for non-sidebar separators.
This is convenient when building a custom sidebar using a GtkSeparator
and to extend a sidebar to the title bar.
Adrien Plazas [Fri, 7 Sep 2018 11:04:59 +0000 (13:04 +0200)]
Adwaita: Drop the background of nested headerbars
This is needed to work around headerbar sliding animation issues without
refactoring Adwaita's support of titlebars and headerbars as it may
break applications.
https://gitlab.gnome.org/GNOME/gtk/issues/1264
Jakub Steiner [Mon, 10 Sep 2018 10:47:05 +0000 (10:47 +0000)]
Merge branch 'wip/adwaita/linked-entry-error-state-fix-master' into 'master'
Adwaita: Fix linked elements in error state
See merge request GNOME/gtk!315
Jakub Steiner [Fri, 7 Sep 2018 20:35:07 +0000 (20:35 +0000)]
Merge branch 'css-fix' into 'master'
win32 theme: Fix css syntax error
See merge request GNOME/gtk!324
Peter Simonyi [Fri, 7 Sep 2018 12:31:22 +0000 (08:31 -0400)]
win32 theme: Fix css syntax error
Matthias Clasen [Thu, 6 Sep 2018 00:10:41 +0000 (20:10 -0400)]
Add devel style to demos
Lets show this off. Its cool.
Matthias Clasen [Wed, 5 Sep 2018 23:54:32 +0000 (19:54 -0400)]
Fix portal path handling
This was broken when I recently introduced this helper
function.
Benjamin Otte [Wed, 5 Sep 2018 14:24:25 +0000 (16:24 +0200)]
rendernodepaintable: Fix clipping
We need to translate before clipping, otherwise we clip in totally the
wrong place.
Benjamin Otte [Wed, 5 Sep 2018 04:33:12 +0000 (06:33 +0200)]
iconhelper: Fix drawing of empty and paintable helpers
Empty helpers did try to draw a NULL paintable (not good) and in the
non-null case code used the wrong width/height.
Timm Bäder [Tue, 4 Sep 2018 10:02:05 +0000 (10:02 +0000)]
Merge branch 'gtkbbox-doc-fix' into 'master'
Minor fixes in documentation of gtkbbox
See merge request GNOME/gtk!318
Lennart Buhl [Mon, 3 Sep 2018 17:53:16 +0000 (19:53 +0200)]
Minor fixes in documentation of gtkbbox
Ask Hjorth Larsen [Sun, 2 Sep 2018 21:46:33 +0000 (23:46 +0200)]
Updated Danish translation of gtk-properties
Ask Hjorth Larsen [Sun, 2 Sep 2018 21:45:47 +0000 (23:45 +0200)]
Updated Danish translation of gtk
Ask Hjorth Larsen [Sun, 2 Sep 2018 21:19:35 +0000 (23:19 +0200)]
Updated Danish translation of gtk
Ask Hjorth Larsen [Sun, 2 Sep 2018 19:42:45 +0000 (21:42 +0200)]
Updated Danish translation of gtk-properties
Alex Monday [Sat, 1 Sep 2018 14:52:19 +0000 (19:52 +0500)]
themes: Fix linked elements in error state
Add instructions for color of linked elements border which ajoints
entry, when parent linked entry is in error state.
Daniel Boles [Sun, 2 Sep 2018 08:21:47 +0000 (09:21 +0100)]
Adwaita: Regenerate CSS to get window.devel styles
This step was missed before, again.
SASS 3.6 emits rgba(0, 0, 0, 0) instead of transparent, so it wants to
change those too, but that patch was only committed in March and isn't
being backported to the previous stable, so I don't know if others'
versions will do the same - so until it's shown that anyone else (A) is
regenerating CSS and (B) also has 3.6, I'm skipping those changes. See:
https://github.com/sass/libsass/commit/
c287f312ac9735aa274bbce56762391ca348cad9
Piotr Drąg [Fri, 31 Aug 2018 17:47:44 +0000 (19:47 +0200)]
Update Polish translation
Matthias Clasen [Fri, 31 Aug 2018 17:38:01 +0000 (13:38 -0400)]
GtkApplication: Improve the docs
Expand the docs for ::register-session a bit.
Matthias Clasen [Fri, 31 Aug 2018 17:23:59 +0000 (13:23 -0400)]
Avoid a pointless goto
We can just return here.
Matthias Clasen [Fri, 31 Aug 2018 17:23:25 +0000 (13:23 -0400)]
Add a helpful comment
Matthias Clasen [Thu, 30 Aug 2018 05:06:51 +0000 (01:06 -0400)]
GtkApplication: track screensaver state
A number of applications want to track the state of the screensaver.
Make this information available as a boolean property. We only listen
for state changes when ::register-session is set to TRUE.
This is implemented for unsandboxed D-Bus access by talking
directly to org.gnome.ScreenSaver or org.freedesktop.ScreenSaver,
and for sandboxed D-Bus by using a (new) portal API.
A Quartz implementation is missing.
Matthias Clasen [Thu, 30 Aug 2018 20:38:03 +0000 (16:38 -0400)]
GtkApplication: Respect GTK_USE_PORTAL
When the environment variable is set, don't connect
to the session manager, but instead rely on the
inhibit portal.
Matthias Clasen [Thu, 30 Aug 2018 17:13:45 +0000 (13:13 -0400)]
file chooser portal: use request path utilities
Less code duplication, more sticky toffee!